home *** CD-ROM | disk | FTP | other *** search
/ Workbench Add-On / Workbench Add-On - Volume 1.iso / Dev / Oberon / source / amiga / Translator.mod < prev    next >
Text File  |  1995-06-29  |  2KB  |  86 lines

  1. (**************************************************************************
  2.  
  3.      $RCSfile: Translator.mod $
  4.   Description: Interface to translator.library
  5.  
  6.    Created by: fjc (Frank Copeland)
  7.     $Revision: 3.8 $
  8.       $Author: fjc $
  9.         $Date: 1995/06/04 23:13:14 $
  10.  
  11.   Includes Release 40.15
  12.  
  13.   (C) Copyright 1985-1993 Commodore-Amiga, Inc.
  14.       All Rights Reserved
  15.  
  16.   Oberon-A interface Copyright © 1994-1995, Frank Copeland.
  17.   This file is part of the Oberon-A Interface.
  18.   See Oberon-A.doc for conditions of use and distribution.
  19.  
  20. ***************************************************************************)
  21.  
  22. <* STANDARD- *>
  23.  
  24. MODULE [2] Translator;
  25.  
  26. IMPORT SYS := SYSTEM, Kernel, e := Exec;
  27.  
  28.  
  29. (*
  30. **      $VER: translator.h 36.1 (13.12.90)
  31. **
  32. **      Useful definitions for translator.library
  33. *)
  34.  
  35. CONST
  36.  
  37. (*      Translator error return codes   *)
  38.  
  39.   notUsed * =    -1;      (* This is an oft used system rc        *)
  40.   noMem *   =    -2;      (* Can't allocate memory                *)
  41.   makeBad * =    -4;      (* Error in MakeLibrary call            *)
  42.  
  43.  
  44. (*-- Library Base variable --------------------------------------------*)
  45.  
  46. CONST
  47.  
  48.   translatorName * = "translator.library";
  49.  
  50. VAR
  51.  
  52.   base* : e.LibraryPtr;
  53.  
  54.  
  55. (*-- Library Functions ------------------------------------------------*)
  56.  
  57. (*
  58. **      $VER: translator_protos.h 36.1 (7.11.90)
  59. *)
  60.  
  61.  
  62. PROCEDURE Translate* [base,-30]
  63.   ( inputString      [8] : ARRAY OF CHAR;
  64.     inputLength      [0] : LONGINT;
  65.     VAR outputBuffer [9] : ARRAY OF CHAR;
  66.     bufferSize       [1] : LONGINT )
  67.   : LONGINT;
  68.  
  69.  
  70. (*-- Library Base variable --------------------------------------------*)
  71.  
  72. <*$LongVars-*>
  73.  
  74. (*-----------------------------------*)
  75. PROCEDURE* [0] CloseLib (VAR rc : LONGINT);
  76.  
  77. BEGIN (* CloseLib *)
  78.   IF base # NIL THEN e.CloseLibrary (base) END;
  79. END CloseLib;
  80.  
  81. BEGIN
  82.   base := e.OpenLibrary (translatorName, e.libraryMinimum);
  83.   IF base = NIL THEN HALT (100) END;
  84.   Kernel.SetCleanup (CloseLib)
  85. END Translator.
  86.